/**
 * 
 */
package com.ginger.rabbitmq.adapter;

import java.io.File;
import java.io.Serializable;
import java.util.Map;

import org.slf4j.Logger;
import org.slf4j.LoggerFactory;

import com.ginger.rabbitmq.entity.Order;
import com.ginger.rabbitmq.entity.Packaged;

/**
 * @Description: 消息适配器
 * @author 姜锋
 * @date 2019年3月31日 下午3:36:05 
 * @version V1.0   
 *
 */
public class MessageDelegate {
	/** 日志对象 **/
	private final static Logger logger = LoggerFactory.getLogger(MessageDelegate.class);
	public void handleMessage(String text) {
		logger.info("默认方式 String,消息体: "+new String(text));
	}
	
	public void handleMessage(Map<?,?> map){
		logger.info("默认方式 Map,消息体: "+map);
	}
	
	public void handleMessage(byte[] bytes) {
		logger.info("默认方式 byte[],消息体: "+new String(bytes));
	}
	
	public void handleMessage(Serializable obj) {
		logger.info("默认方式 Serializable,消息体: "+obj);
	}
	
	public void consumeMessage(byte[] bytes) {
		logger.info("自定义方式 byte[],消息体: "+new String(bytes));
	}
	
	public void dlxMessage(String text) {
		logger.info("死信队列自定义方式text,消息体: "+text);
	}
	
	public void consumeMessage(Map<?,?> messageBody) {
		logger.info("json格式messageBody,消息体: "+messageBody);
	}
	
	
	
	
	public void consumeMessage(Order order) {
		logger.info("Java对象Order,消息体: "+order);
	}
	public void consumeMessage(Packaged packaged) {
		logger.info("Java对象Packaged,消息体: "+packaged);
	}
	
	public void queue001(String text) {
		logger.info("queue001自定义方式text,消息体: "+text);
	}
	
	public void test002(String text) {
		logger.info("test002自定义方式text,消息体: "+text);
	}
	
	public void consumeMessage(File file) {
		logger.info("文件对象 方法 ,消息内容: "+file.getName());
	}
	
	
}
